﻿namespace AuSys.Controllers
{
    public interface IAccessCheckController
    {
        public AccessibleUserIds GetAccessibleUserIds(
            object obj, string? policy = null);
    }
    public class AccessibleUserIds
    {
        public AccessibleUserIds(List<int> ands, List<int>? ors = null)
        {
            Ands = ands;
            Ors = ors;
        }
        private AccessibleUserIds()
        {
        }
        public static AccessibleUserIds Pass()
            => new() { NoNeedCheck = true };

        public bool NoNeedCheck { get; private set; }
        public List<int>? Ands { get; }
        public List<int>? Ors { get; }
    }
}
